package com.ruoyi.fun.service;

import java.util.List;
import com.ruoyi.fun.domain.EcStockLog;

/**
 * 库存记录Service接口
 * 
 * @author ruoyi
 * @date 2025-08-06
 */
public interface IEcStockLogService 
{
    /**
     * 查询库存记录
     * 
     * @param logId 库存记录主键
     * @return 库存记录
     */
    public EcStockLog selectEcStockLogByLogId(Long logId);

    /**
     * 查询库存记录列表
     * 
     * @param ecStockLog 库存记录
     * @return 库存记录集合
     */
    public List<EcStockLog> selectEcStockLogList(EcStockLog ecStockLog);

    /**
     * 新增库存记录
     * 
     * @param ecStockLog 库存记录
     * @return 结果
     */
    public int insertEcStockLog(EcStockLog ecStockLog);

    /**
     * 修改库存记录
     * 
     * @param ecStockLog 库存记录
     * @return 结果
     */
    public int updateEcStockLog(EcStockLog ecStockLog);

    /**
     * 批量删除库存记录
     * 
     * @param logIds 需要删除的库存记录主键集合
     * @return 结果
     */
    public int deleteEcStockLogByLogIds(Long[] logIds);

    /**
     * 删除库存记录信息
     * 
     * @param logId 库存记录主键
     * @return 结果
     */
    public int deleteEcStockLogByLogId(Long logId);

    /**
     * 根据logId和组织ID查询StockLog
     * 
     * @param logId StockLog主键
     * @param orgId 组织ID
     * @return StockLog
     */
    public EcStockLog selectEcStockLogByLogIdAndOrgId(Long logId, Long orgId);

    /**
     * 根据组织ID查询StockLog列表
     * 
     * @param ecstocklog StockLog
     * @param orgId 组织ID
     * @return StockLog集合
     */
    public List<EcStockLog> selectEcStockLogListByOrgId(EcStockLog ecstocklog, Long orgId);

    /**
     * 导入库存记录数据
     * 
     * @param logList 库存记录数据列表
     * @param updateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作用户
     * @param orgId 组织ID
     * @return 结果
     */
    public String importStockLog(List<EcStockLog> logList, Boolean updateSupport, String operName, Long orgId);
}
